home *** CD-ROM | disk | FTP | other *** search
/ Trusted Irix /B 4.0.4 / Trusted-Irix B-4.0.1.iso / dist / eoe1.idb / usr / include / sys / IP5addrs.h.z / IP5addrs.h
C/C++ Source or Header  |  1992-04-03  |  5KB  |  127 lines

  1. #if IP5
  2. #ifndef __SYS_IP5ADDRS_H__
  3. #define __SYS_IP5ADDRS_H__
  4.  
  5. /**************************************************************************
  6.  *                                      *
  7.  *          Copyright (C) 1990, Silicon Graphics, Inc.          *
  8.  *                                      *
  9.  *  These coded instructions, statements, and computer programs  contain  *
  10.  *  unpublished  proprietary  information of Silicon Graphics, Inc., and  *
  11.  *  are protected by Federal copyright law.  They  may  not be disclosed  *
  12.  *  to  third  parties  or copied or duplicated in any form, in whole or  *
  13.  *  in part, without the prior written consent of Silicon Graphics, Inc.  *
  14.  *                                      *
  15.  **************************************************************************/
  16. #ident "$Revision: 3.17 $"
  17.  
  18. /*
  19.  * Definitions of physical memory usage for the IP5
  20.  * 
  21.  * Physical memory usage for the IP5
  22.  * 
  23.  *                 ---------------------------------
  24.  * 0x1fffffff            |                |
  25.  *                 ---------------------------------
  26.  * 0x1fc00000            | prom text & read only data    |
  27.  *                 ---------------------------------
  28.  *                 | SASH                |
  29.  * 0x00700000            ---------------------------------
  30.  *                | IP5 MONITOR            |
  31.  * 0x00600000            ---------------------------------
  32.  *                |                |
  33.  * 0x0001b000            | Debug version of UNIX        |
  34.  *                 ---------------------------------
  35.  * 0x0001b000            | IP5 Prom stack cpu 7 / UNIX    |
  36.  *                 ---------------------------------
  37.  * 0x0001a000            | IP5 Prom stack cpu 6 / UNIX    |
  38.  *                 ---------------------------------
  39.  * 0x00019000            | IP5 Prom stack cpu 5 / UNIX    |
  40.  *                 ---------------------------------
  41.  * 0x00018000            | IP5 Prom stack cpu 4 / UNIX    |
  42.  *                 ---------------------------------
  43.  * 0x00017000            | IP5 Prom stack cpu 3 / UNIX    |
  44.  *                 ---------------------------------
  45.  * 0x00016000            | IP5 Prom stack cpu 2 / UNIX    |
  46.  *                 ---------------------------------
  47.  * 0x00015000            | IP5 Prom stack cpu 1 / UNIX    |
  48.  *                 ---------------------------------
  49.  * 0x00014000            | IP5 Prom stack cpu 0 / UNIX    |
  50.  *                 ---------------------------------
  51.  * 0x00003000            | IP5 Prom bss/ UNIX        |
  52.  *                 --------------------------------
  53.  * 0x00001000            | GM Communication area (8k)    |
  54.  *                 ---------------------------------
  55.  * 0x00000500            | MPCONF block            |
  56.  *                 ---------------------------------
  57.  * 0x00000400            | restart block            |
  58.  *                 ---------------------------------
  59.  * 0x00000080            | general exception handler    |
  60.  *                 ---------------------------------
  61.  * 0x00000000            | utlbmiss handler        |
  62.  *                 ---------------------------------
  63.  *
  64.  * *********************** NOTE *************************
  65.  * To allow two SKYWRITER pipes in a system, the 8Kbytes GM
  66.  * communication area is now different.  The change is ugly
  67.  * but hopefully will allow two GMs to coexist without requiring
  68.  * modification to the CPU PROM.
  69.  *
  70.  * The 8Kbyte area for VGX(1 pipe), starting at address 0x1000:
  71.  *    2Kb     host to GM communication area.
  72.  *     2Kb    GM to host communication area.
  73.  *    1Kb    area for GM powerup diagnostics.
  74.  *    2Kb    host and GM shared area.
  75.  *    1Kb    unused.
  76.  * The new scheme is as follow:
  77.  *    2Kb    host to GM communication area for pipe 0.
  78.  *     2Kb    GM to host communication area for pipe 0.
  79.  *    1Kb    area for GM powerup diagnostics for pipe 0.
  80.  *    1Kb    host and GM shared area for pipe 0.
  81.  *    1Kb    host and GM shared area for pipe 1.
  82.  *    1Kb    area for GM powerup diagnostics for pipe 1.
  83.  * The 2Kb host to GM communication area and the 2Kb GM to host
  84.  * communication area for pipe 1 are allocated by the kernel
  85.  * at driver init time.  The physical address of this memory
  86.  * is stored by the host at a known place in the host and GM shared area
  87.  * for pipe 1.  When the GM of pipe 1 gets an init memory command,
  88.  * it reads in this address and uses it for communication from then
  89.  * on.
  90.  */ 
  91.  
  92. /*
  93.  * Address definitions
  94.  * Note: When moving address map between 0 to SYMMON_STACK7, double check
  95.  * IP5prom start up code. The IP5prom checks memory from 0 to GMCOMM_ADDR
  96.  * and from GMCOMM_ADDR+GMCOMM_SIZE to SYMMON_STACK7. It then checks out
  97.  * the GMCOMM area via gminit(). The rest of memory is checked later up to
  98.  * 8Meg.
  99.  */
  100. #define MONITOR_STACK        (0xb0700000-4)
  101. #define MONITOR_BSS        0xb0640000    /* Monitor text < 256K */
  102. #define    MONITOR_TEXT        0xb0600000
  103. #define PROM_STACK        MONITOR_STACK
  104. #define    SYMMON_STACK7        0xb001b000
  105. #define    SYMMON_STACK6        0xb001a000
  106. #define    SYMMON_STACK5        0xb0019000
  107. #define    SYMMON_STACK4        0xb0018000
  108. #define    SYMMON_STACK3        0xb0017000
  109. #define    SYMMON_STACK2        0xb0016000
  110. #define    SYMMON_STACK1        0xb0015000
  111. #define    SYMMON_STACK        0xb0014000
  112. #define    SYMMON_STACKEND        SYMMON_STACK7
  113. #define    SYMMON_BSSADDR        0xb0003000
  114. #define    GMCOMM_ADDR        0xb0001000
  115. #define    MPCONF_ADDR        0xb0000500
  116. #define    RESTART_ADDR        0xb0000400
  117.  
  118. /*
  119.  * Size definitions
  120.  */
  121. #define GMCOMM_SIZE        8*1024
  122. #define    SYMMON_PDASIZE        512    /* size per CPU */
  123. #define    MONITOR_SIZE        256*1024 /* will grow to be 256K */    
  124.  
  125. #endif /* __SYS_IP5ADDRS_H__ */
  126. #endif /* IP5 */
  127.